#ifndef Net_ServerSocket_INCLUDED
#define Net_ServerSocket_INCLUDED

#include "socket.h"

class ServerSocket: public Socket
{
public:
    ServerSocket();

    ServerSocket(const SocketAddress& address, int backlog = LISTEN_BACKLOG);

    ServerSocket(unsigned int port, int backlog = LISTEN_BACKLOG);

    virtual ~ServerSocket();

    ServerSocket(const Socket& socket);
    ServerSocket& operator = (const Socket& socket);

    void bind(const SocketAddress& address, bool reuseAddress = true);

    void bind(unsigned int port, bool reuseAddress = true);

    void listen(int backlog = LISTEN_BACKLOG);
};

#endif



